<template>
  <div class="flow-picture-container">
    <div id="node_01" class="picture-item">
      项目立项及备案
    </div>
    <div class="dashed-box-01 line-box">
      <div class="body-container">
        <div class="top">
          <div class="picture-item" id="node_02">
            <div class="tip-1">徐圩管委会</div>
            <div class="triangle _right"></div>
            编制工可报告
            <div class="triangle _dwon"></div>
            <div class="tip-2">徐圩经发局</div>
          </div>
          <div class="picture-item" id="node_09">
            <div class="triangle _right"></div>
            申请项目规划许可
          </div>
          <div class="picture-item" id="node_10">
            获准项目规划许可
          </div>
        </div>
        <div class="frame-div" :class="[isFrame_1 && 'frame_active_1']"></div>
        <div class="bottom">
          <div class="left">
            <div class="picture-item" id="node_03">
              申请备案
              <div class="triangle _dwon"></div>
            </div>
            <div class="picture-item" id="node_04">
              项目获准备案
              <div class="triangle _right"></div>
            </div>
          </div>
          <div class="right">
            <div class="picture-item" id="node_05">
              安全“三同时”（预评价、设计）报告编制、评审
            </div>
            <div class="picture-item" id="node_06">
              环保预评价登记、报告表、报告书编制评审（项目类别参考《建设项目环境影响评价分类管理名录2021版》）
            </div>
            <div class="picture-item" id="node_07">
              职业卫生“三同时”（预评价、设计）报告编制、评审
            </div>
            <div class="picture-item" id="node_08">
              节能、节地、节⽔评价报告编制、评审（视具体项⽬⽽定）
            </div>
          </div>
        </div>
      </div>
    </div>
    <div class="picture-item" id="node_11">
      <div class="triangle"></div>
      勘察、设计招标、平行审查招标
    </div>
    <div class="piece">
      <div class="picture-item" id="node_54">
        房屋总体风险评估（具体项目视情况而定）
      </div>
      <div class="picture-item" id="node_55">施工安全总体评估</div>
      <div class="picture-item" id="node_56">安全事故综合应急预案</div>
      <div class="frame-div" :class="[isFrame_3 && 'frame_active_2']"></div>
    </div>
    <div class="picture-item" id="node_12">
      <div class="triangle"></div>
      初步设计
      <div class="triangle _dwon"></div>
    </div>
    <div class="dashed-box-02 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_13">
          <div class="triangle _dwon"></div>
          编制初步设计文件
        </div>
        <div class="picture-item" id="node_58">
          <div class="triangle _dwon"></div>
          初步设计内审
        </div>
        <div class="picture-item" id="node_53">
          <div class="triangle _dwon"></div>
          网上申报
        </div>
        <div class="picture-item" id="node_14">
          <div class="triangle _dwon"></div>
          初步设计审查会
        </div>
        <div class="picture-item" id="node_15">
          初步设计许可
        </div>
      </div>
    </div>
    <div class="picture-item" id="node_17">
      <div class="triangle"></div>
      施工图设计(专篇审查根据项目情况确定)
      <div class="triangle _dwon"></div>
    </div>
    <div class="dashed-box-03 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_18">
          <div class="triangle _dwon"></div>
          编制施工图设计
        </div>
        <div class="picture-item" id="node_59">
          <div class="triangle _dwon"></div>
          施工图设计内审
        </div>
        <div class="picture-item" id="node_19">
          <div class="triangle _dwon"></div>
          施工图设计审查
        </div>
        <div class="picture-item" id="node_20">
          施工图设计批复
        </div>
      </div>
    </div>
    <div class="picture-item" id="node_21">
      <div class="triangle _dwon"></div>
      开展施工招标、检测、监理招标
      <div class="triangle _dwon_2"></div>
    </div>
    <div class="dashed-box-04">
      <div class="body-container">
        <div class="picture-item" id="node_22">
          <div class="tip">江苏投资在线平台</div>
          <div class="triangle _dwon"></div>
          质量监督
          <div class="triangle _left"></div>
        </div>
        <div class="picture-item" id="node_57">
          <div class="triangle _left"></div>
          开工备案
        </div>
        <div class="picture-item" id="node_25">
          <div class="triangle _left"></div>
          项目施工
        </div>
        <div class="picture-item" id="node_26">
          <div class="triangle _left"></div>
          项目监理预验收
        </div>
        <div class="picture-item" id="node_27">
          <div class="triangle _left"></div>
          交工质量核验
          <div class="triangle _dwon"></div>
        </div>
        <div class="picture-item" id="node_31">
          <div class="triangle _left"></div>
          档案预验收
        </div>
        <div class="picture-item" id="node_32">
          <div class="triangle _left"></div>
          交工验收
        </div>
        <div class="picture-item" id="node_33">
          专项验收（具体根据项目情况开展）
          <div class="triangle _dwon"></div>
        </div>
      </div>
    </div>
    <div class="dashed-box-05 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_23">
          <div class="triangle _dwon"></div>
          质量监督申请
        </div>
        <div class="picture-item" id="node_24">
          出具质量监督通知书
        </div>
      </div>
    </div>
    <div class="dashed-box-06 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_28">
          <div class="triangle _dwon"></div>
          质量鉴定申请
        </div>
        <div class="picture-item" id="node_29">
          <div class="triangle _dwon"></div>
          召开质量鉴定专家会
        </div>
        <div class="picture-item" id="node_30">
          出具质量鉴定意见
        </div>
      </div>
    </div>
    <div class="dashed-box-07 line-box">
      <div class="body-container">
        <div class="left">
          <div class="picture-item" id="node_34">
            消防验收
          </div>
          <div class="picture-item" id="node_35">
            <div class="triangle _right"></div>
            环保验收
          </div>
          <div class="picture-item" id="node_36">
            安全验收
          </div>
          <div class="picture-item" id="node_37">
            职业病验收
          </div>
        </div>
        <div class="frame-div" :class="[isFrame_2 && 'frame_active_2']"></div>
        <div class="right">
          <div class="picture-item" id="node_38">
            <div class="triangle _dwon"></div>
            试运行
          </div>
          <div class="picture-item" id="node_39">
            施工财务审计
          </div>
        </div>
      </div>
    </div>
    <div class="picture-item" id="node_40">
      竣工质量鉴定
      <div class="triangle _dwon"></div>
      <div class="triangle _dwon_2"></div>
    </div>
    <div class="dashed-box-08 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_41">
          <div class="triangle _dwon"></div>
          竣工质量鉴定申请
        </div>
        <div class="picture-item" id="node_42">
          <div class="triangle _dwon"></div>
          召开质量鉴定专家会
        </div>
        <div class="picture-item" id="node_43">
          出具质量鉴定意见
        </div>
      </div>
    </div>
    <div class="picture-item" id="node_44">
      <div class="triangle _left"></div>
      档案验收
      <div class="triangle _right"></div>
    </div>
    <div class="dashed-box-09 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_45">
          档案验收申请
          <div class="triangle _dwon"></div>
        </div>
        <div class="picture-item" id="node_46">
          召开档案验收会议
          <div class="triangle _dwon"></div>
        </div>
        <div class="picture-item" id="node_47">
          出具档案验收意见
        </div>
      </div>
    </div>
    <div class="picture-item" id="node_48">
      <div class="triangle _left"></div>
      编制竣工验收报告
      <div class="triangle _right"></div>
    </div>
    <div class="picture-item" id="node_49">
      竣工验收
      <div class="triangle _right"></div>
    </div>
    <div class="dashed-box-10 line-box">
      <div class="body-container">
        <div class="picture-item" id="node_50">
          申请竣工验收
          <div class="triangle _dwon"></div>
        </div>
        <div class="picture-item" id="node_51">
          召开竣工审查会
          <div class="triangle _dwon"></div>
        </div>
        <div class="picture-item" id="node_52">
          出具竣工验收核查报告
        </div>
      </div>
    </div>
    <div class="margin-div"></div>
  </div>
</template>

<script>
import { axios } from "@/utils/request";
export default {
  props: {
    visible: {
      type: Boolean,
      default: false,
    },
    tenantCode: {
      type: String,
      default: "",
    },
  },
  data() {
    return {
      isFrame_1: false,
      isFrame_2: false,
      isFrame_3: false,
      nodeData: [],
    };
  },
  watch: {
    visible: {
      handler(val) {
        if (val) {
          this.getData();
        } else {
          this.nodeData = [];
          this.isFrame_1 = false;
          this.isFrame_2 = false;
          this.isFrame_3 = false;
          this.cancel();
        }
      },
      immediate: true,
    },
  },
  mounted() {},
  methods: {
    getData() {
      if (!this.tenantCode) {
        return;
      }
      axios
        .post(
          `/probusiness/projectProcessChild/getListByProCode?proCode=${this.tenantCode}`,
          {},
          {
            headers: {
              "Content-Type": "application/json;charset=UTF-8",
            },
          }
        )
        .then((res) => {
          let list = res?.data ?? [];
          let nestedArray = [];

          list.forEach((v) => {
            nestedArray.push(v.split(","));
          });

          let flatArray = this.flattenArray(nestedArray);

          flatArray.forEach((v) => {
            if (v < 10) {
              this.nodeData.push("0" + v);
            } else {
              this.nodeData.push(v);
            }
          });

          this.getNodeName();
        })
        .catch((_) => {
          this.nodeData = [];
        });
    },

    getNodeName() {
      var ids = document.querySelectorAll('[id^="node_"]');
      // 输出获取到的元素
      ids.forEach((el) => {
        // 获取元素的所有类名
        const classNames = el.className.split(/\s+/);
        // 获取元素的所有Id
        const elementId = el.id;
        let str = elementId.slice(-2);
        if (this.nodeData.includes(str)) {
          el.className = `${classNames[0]} active`;

          if (this.nodeData.includes("04")) {
            this.isFrame_1 = true;
          }

          if (this.nodeData.includes("37")) {
            this.isFrame_2 = true;
          }

          if (this.nodeData.includes("15")) {
            this.isFrame_3 = true;
          }
        }
      });
    },

    flattenArray(arr) {
      let result = [];
      arr.forEach((item) => {
        if (Array.isArray(item)) {
          result = result.concat(this.flattenArray(item));
        } else {
          result.push(item);
        }
      });
      return result;
    },
    cancel() {
      var elements = document.querySelectorAll('[id^="node_"]');
      elements.forEach((el) => {
        // 获取元素的所有类名
        const classNames = el.className.split(/\s+/);
        el.className = `${classNames[0]}`;
      });
    },
  },
};
</script>

<style lang="less" scoped>
.flow-picture-container {
  height: 100%;
  width: 100%;
  position: relative;
  .margin-div {
    position: absolute;
    left: 0;
    top: 1054px;
    height: 30px;
    width: 300px;
  }
  .triangle {
    position: absolute;
    z-index: 11;
    &::after {
      content: "";
      position: absolute;
      top: 0;
      left: 5px;
      width: 40px;
      height: 0;
      border-bottom: 1px solid #8c8c8c;
      z-index: 22;
    }
    &::before {
      content: "";
      position: absolute;
      top: -4px;
      left: 0;
      width: 0;
      height: 0;
      border: 4px solid transparent;
      border-bottom: 5px solid #8c8c8c;
      transform: rotate(90deg);
      z-index: 33;
    }
  }
  .picture-item {
    min-height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    box-sizing: border-box;
    font-family: Microsoft YaHei, Microsoft YaHei;
    font-weight: 400;
    font-size: 14px;
    color: #8c8c8c;
    text-align: center;
    background: @base-bg-color;
    border: 1px solid #d9d9d9;
    border-radius: 4px;
  }
  .line-box {
    border-radius: 4px;
    border: 2px dashed #8c8c8c;
    background-color: @base-bg-color;
    padding: 20px 20px;
    box-sizing: border-box;
  }
  #node_01 {
    position: absolute;
    top: 238px;
    left: 4px;
    &::before {
      content: "";
      width: 33px;
      height: 0;
      border-bottom: 1px solid #8c8c8c;
      position: absolute;
      top: 14px;
      right: -34px;
    }
  }
  .dashed-box-01 {
    position: absolute;
    left: 154px;
    top: 0;
    padding: 10px 20px;
    box-sizing: border-box;
    .body-container {
      height: 100%;
      display: flex;
      flex-direction: column;
      .top {
        display: flex;
        margin-bottom: 40px;
        .picture-item {
          width: 140px;
          position: relative;
          ._dwon {
            top: 24px;
            left: 70px;
            transform: rotate(90deg);
            &::after {
              width: 36px;
            }
            &::before {
              left: 40px;
            }
          }
          ._right {
            top: 14px;
            left: 134px;
            transform: rotate(0deg);
            &::after {
              width: 76px;
            }
            &::before {
              left: 80px;
            }
          }
        }
        #node_09 {
          margin: 0 100px 0 80px;
          &::after {
            content: "徐圩港区办";
            font-family: Microsoft YaHei, Microsoft YaHei;
            font-weight: 400;
            font-size: 12px;
            color: #8c8c8c;
            position: absolute;
            top: -8px;
            right: -80px;
          }
          ._right {
            &::after {
              width: 96px;
            }
            &::before {
              left: 100px;
            }
          }
        }
        #node_02 {
          &::after {
            content: "徐圩经发局";
            font-family: Microsoft YaHei, Microsoft YaHei;
            font-weight: 400;
            font-size: 12px;
            color: #8c8c8c;
            position: absolute;
            top: -8px;
            right: -68px;
          }
          .tip-1 {
            position: absolute;
            top: 38px;
            left: 0;
            width: 64px;
            font-weight: 400;
            font-size: 12px;
            color: #8c8c8c;
          }
          .tip-2 {
            position: absolute;
            top: 38px;
            left: 70px;
            width: 64px;
            font-weight: 400;
            font-size: 12px;
            color: #8c8c8c;
          }
        }
      }
      .frame-div {
        position: absolute;
        top: 104px;
        left: 230px;
        height: 260px;
        width: 86px;
        border: 1px solid #8c8c8c;
        border-right: 0;
      }
      .bottom {
        display: flex;
        .left {
          .picture-item {
            position: relative;
            width: 140px;
            margin-bottom: 80px;
            &:last-of-type {
              margin-bottom: 0;
            }
            ._dwon {
              top: 24px;
              left: 70px;
              transform: rotate(90deg);
              &::after {
                width: 76px;
              }
              &::before {
                left: 80px;
              }
            }
            ._right {
              top: 14px;
              left: 134px;
              &::after {
                width: 66px;
              }
              &::before {
                left: 70px;
              }
            }
          }
          #node_03 {
            &::after {
              content: "徐圩经发局";
              font-family: Microsoft YaHei, Microsoft YaHei;
              font-weight: 400;
              font-size: 12px;
              color: #8c8c8c;
              position: absolute;
              top: 58px;
              right: 0px;
            }
          }
        }
        .right {
          margin-left: 156px;
          .picture-item {
            width: 284px;
            margin-bottom: 26px;
            &:last-of-type {
              margin-bottom: 0;
            }
          }
        }
      }
    }
  }
  #node_11 {
    position: absolute;
    top: 40px;
    left: 860px;
    width: 158px;
    .triangle {
      top: 25px;
      left: -68px;
      &::after {
        width: 58px;
      }
      &::before {
        left: 62px;
      }
    }
  }
  .piece {
    position: absolute;
    top: 126px;
    left: 860px;
    .picture-item {
      width: 130px;
      margin-bottom: 30px;
    }
    .frame-div {
      position: absolute;
      top: 34px;
      left: 130px;
      height: 154px;
      width: 22px;
      border: 1px solid #8c8c8c;
      border-left: 0;
    }
  }
  #node_12 {
    position: absolute;
    top: 40px;
    left: 1075px;
    width: 104px;
    .triangle {
      top: 14px;
      left: -64px;
      &::after {
        width: 52px;
      }
      &::before {
        left: 57px;
      }
    }
    ._dwon {
      top: 25px;
      left: 52px;
      transform: rotate(90deg);
      &::after {
        width: 38px;
      }
      &::before {
        left: 42px;
      }
    }
  }
  .dashed-box-02 {
    position: absolute;
    left: 1040px;
    top: 102px;
    padding: 10px 20px;
    box-sizing: border-box;
    &::before {
      content: "";
      width: 52px;
      height: 0;
      border-bottom: 1px solid #8c8c8c;
      position: absolute;
      top: 142px;
      left: -52px;
    }
    &::after {
      content: "";
      position: absolute;
      top: 138px;
      left: -34px;
      width: 0;
      height: 0;
      border: 4px solid transparent;
      border-bottom: 5px solid #8c8c8c;
      transform: rotate(270deg);
    }
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 130px;
        margin-bottom: 30px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 65px;
          transform: rotate(90deg);
          &::after {
            width: 26px;
          }
          &::before {
            left: 30px;
          }
        }
      }
      #node_53 {
        &::after {
          content: "报徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 36px;
          right: -16px;
        }
      }
      #node_14 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 36px;
          right: -4px;
        }
      }
    }
  }
  #node_17 {
    position: absolute;
    top: 32px;
    left: 1242px;
    width: 178px;
    .triangle {
      top: 20px;
      left: -70px;
      &::after {
        width: 60px;
      }
      &::before {
        left: 64px;
      }
    }
    ._dwon {
      top: 45px;
      left: 88px;
      transform: rotate(90deg);
      &::after {
        width: 30px;
      }
      &::before {
        left: 33px;
      }
    }
  }
  .dashed-box-03 {
    position: absolute;
    left: 1242px;
    top: 102px;
    padding: 10px 20px;
    box-sizing: border-box;
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 130px;
        margin-bottom: 30px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 65px;
          transform: rotate(90deg);
          &::after {
            width: 26px;
          }
          &::before {
            left: 30px;
          }
        }
      }
      #node_59 {
        &::after {
          content: "报徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 36px;
          right: -16px;
        }
      }
      #node_19 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 36px;
          right: -4px;
        }
      }
    }
  }
  #node_21 {
    position: absolute;
    top: 370px;
    left: 1260px;
    width: 150px;
    ._dwon {
      top: -36px;
      left: 70px;
      transform: rotate(90deg);
      &::after {
        width: 26px;
      }
      &::before {
        left: 30px;
      }
    }
    ._dwon_2 {
      top: 46px;
      left: 70px;
      transform: rotate(90deg);
      &::after {
        width: 23px;
      }
      &::before {
        left: 28px;
      }
    }
  }
  .dashed-box-04 {
    position: absolute;
    top: 452px;
    left: 4px;
    .body-container {
      .picture-item {
        position: absolute;
        top: 0;
        ._left {
          left: 4px;
          transform: rotate(180deg);
          &::after {
            width: 60px;
          }
          &::before {
            left: 64px;
          }
        }
        ._dwon {
          top: 24px;
          left: 72px;
          transform: rotate(90deg);
          &::after {
            width: 56px;
          }
          &::before {
            left: 60px;
          }
        }
      }
      #node_22 {
        left: 1254px;
        width: 150px;
        .tip {
          position: absolute;
          top: -24px;
          left: -60px;
          width: 58px;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
        }
        &::after {
          z-index: 22;
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 60px;
          right: 0;
        }
      }
      #node_57 {
        left: 1114px;
        width: 76px;
      }
      #node_25 {
        left: 974px;
        width: 76px;
      }
      #node_26 {
        left: 790px;
        width: 120px;
      }
      #node_27 {
        left: 616px;
        width: 110px;
        ._dwon {
          top: 24px;
          left: 62px;
        }
        &::after {
          z-index: 22;
          content: "报徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 60px;
          right: -36px;
        }
      }
      #node_31 {
        left: 442px;
        width: 110px;
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: -12px;
          left: -62px;
        }
      }
      #node_32 {
        left: 268px;
        width: 110px;
      }
      #node_33 {
        top: -10px;
        left: 54px;
        width: 150px;
        ._dwon {
          top: 46px;
          left: 74px;
          &::after {
            width: 46px;
          }
          &::before {
            left: 50px;
          }
        }
      }
    }
  }
  .dashed-box-05 {
    position: absolute;
    top: 504px;
    left: 1232px;
    padding-top: 40px;
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 150px;
        margin-bottom: 46px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 76px;
          transform: rotate(90deg);
          &::after {
            width: 42px;
          }
          &::before {
            left: 46px;
          }
        }
      }
      #node_23 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 42px;
          right: 0;
        }
      }
    }
  }
  .dashed-box-06 {
    position: absolute;
    top: 504px;
    left: 584px;
    padding-top: 40px;
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 150px;
        margin-bottom: 46px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 76px;
          transform: rotate(90deg);
          &::after {
            width: 42px;
          }
          &::before {
            left: 46px;
          }
        }
      }
      #node_28 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 42px;
          right: 0;
        }
      }
      #node_29 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 42px;
          right: 0;
        }
      }
    }
  }
  .dashed-box-07 {
    position: absolute;
    top: 504px;
    left: 36px;
    padding-top: 40px;
    .body-container {
      display: flex;
      align-items: center;
      .picture-item {
        width: 150px;
        margin-bottom: 26px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 76px;
          transform: rotate(90deg);
          &::after {
            width: 22px;
          }
          &::before {
            left: 26px;
          }
        }
      }
      .left {
        margin-right: 80px;
        #node_35 {
          ._right {
            left: 144px;
            &::after {
              width: 76px;
            }
            &::before {
              left: 80px;
            }
          }
        }
      }
      .frame-div {
        position: absolute;
        top: 54px;
        left: 170px;
        height: 118px;
        width: 50px;
        border: 1px solid #8c8c8c;
        border-left: 0;
      }
    }
  }
  #node_40 {
    position: absolute;
    top: 796px;
    left: 176px;
    width: 150px;
    ._dwon {
      top: -32px;
      left: 72px;
      transform: rotate(90deg);
      &::after {
        width: 22px;
      }
      &::before {
        left: 25px;
      }
    }
    ._dwon_2 {
      top: 24px;
      left: 72px;
      transform: rotate(90deg);
      &::after {
        width: 32px;
      }
      &::before {
        left: 36px;
      }
    }
  }
  .dashed-box-08 {
    position: absolute;
    top: 864px;
    left: 150px;
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 150px;
        margin-bottom: 26px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 76px;
          transform: rotate(90deg);
          &::after {
            width: 22px;
          }
          &::before {
            left: 26px;
          }
        }
      }
      #node_41 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 32px;
          right: 0;
        }
      }
      #node_42 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 32px;
          right: 0;
        }
      }
    }
  }
  #node_44 {
    position: absolute;
    top: 944px;
    left: 396px;
    width: 120px;
    ._left {
      left: -58px;
      &::after {
        width: 48px;
      }
      &::before {
        left: 52px;
      }
    }
    ._right {
      left: 114px;
      &::before {
        left: 44px;
      }
    }
  }
  .dashed-box-09 {
    position: absolute;
    top: 864px;
    left: 560px;
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 150px;
        margin-bottom: 26px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 76px;
          transform: rotate(90deg);
          &::after {
            width: 22px;
          }
          &::before {
            left: 26px;
          }
        }
      }
      #node_45 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 32px;
          right: 0;
        }
      }
      #node_46 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 32px;
          right: 0;
        }
      }
    }
  }
  #node_48 {
    position: absolute;
    top: 944px;
    left: 804px;
    width: 140px;
    ._left {
      left: -58px;
      &::after {
        width: 48px;
      }
      &::before {
        left: 52px;
      }
    }
    ._right {
      left: 134px;
      &::before {
        left: 44px;
      }
    }
  }
  #node_49 {
    position: absolute;
    top: 944px;
    left: 988px;
    width: 140px;
    ._right {
      left: 134px;
      &::before {
        left: 44px;
      }
    }
  }

  .dashed-box-10 {
    position: absolute;
    top: 864px;
    left: 1172px;
    .body-container {
      display: flex;
      flex-direction: column;
      .picture-item {
        width: 160px;
        margin-bottom: 26px;
        position: relative;
        &:last-of-type {
          margin-bottom: 0;
        }
        ._dwon {
          top: 24px;
          left: 76px;
          transform: rotate(90deg);
          &::after {
            width: 22px;
          }
          &::before {
            left: 26px;
          }
        }
      }
      #node_50 {
        &::after {
          content: "徐圩港区办";
          font-family: Microsoft YaHei, Microsoft YaHei;
          font-weight: 400;
          font-size: 12px;
          color: #8c8c8c;
          position: absolute;
          top: 32px;
          right: 0;
        }
      }
    }
  }

  .active {
    color: #239b53 !important;
    border-color: #239b53 !important;
    &::after {
      color: #239b53 !important;
    }
    &::before {
      border-bottom: 1px solid #239b53 !important;
      background: #239b53 !important;
    }
    .triangle {
      &::after {
        border-bottom: 1px solid #239b53 !important;
      }
      &::before {
        border-bottom: 5px solid #239b53 !important;
      }
    }
    .tip {
      color: #239b53 !important;
    }
  }
  .frame_active_1 {
    border: 1px solid #239b53 !important;
    border-right: 0 !important;
  }
  .frame_active_2 {
    border: 1px solid #239b53 !important;
    border-left: 0 !important;
  }
}
</style>
